<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
            "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>



<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<META name="GENERATOR" content="hevea 1.08">
<LINK rel="stylesheet" type="text/css" href="tutorial.css">
<TITLE>
Global Reasoning
</TITLE>
</HEAD>
<BODY >
<A HREF="tutorial112.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="tutorial107.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="tutorial114.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
<HR>

<H2 CLASS="section"><A NAME="htoc223">15.6</A>&nbsp;&nbsp;Global Reasoning</H2>
<A NAME="@default404"></A>
Constraints in <TT>ic</TT> are handled separately and individually. More
global consistency techniques can be achieved using global
constraints.
Propia and CHRs provide alternative methods of achieving more global
consistency.
Propia allows any subproblem to be treated as a single constraint.
CHRs allow any set of constraints to be handled by a single rule.
Each technique has special strengths. Propia is good for handling
complicated logical combinations of constraints. CHRs are good for
combining sets of constraints to extract transitive closures, and
cliques.<BR>
<BR>
Both are fun to implement and use!<BR>
<BR>
<HR>
<A HREF="tutorial112.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="tutorial107.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="tutorial114.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
</BODY>
</HTML>
